home *** CD-ROM | disk | FTP | other *** search
/ Programmer Plus 2007 / Programmer-Plus-2007.iso / Programming / Borland Plateform / Turbo Prolog 2 / EXAMPL55.PRO < prev    next >
Encoding:
Prolog Source  |  1986-04-01  |  423 b   |  17 lines

  1.                     /* Program 55 */
  2. domains
  3.     loc = right ; middle ; left
  4. predicates
  5.     hanoi(integer)
  6.     move(integer,loc,loc,loc)
  7.     inform(loc,loc)
  8. clauses
  9.     hanoi(N) :- move(N,left,middle,right).
  10.  
  11.     move(1,A,_,C) :- inform(A,C),!.
  12.     move(N,A,B,C) :-
  13.          N1=N-1,move(N1,A,C,B),inform(A,C),move(N1,B,A,C).
  14.  
  15.     inform(Loc1,Loc2):-
  16.          write("\nMove a disk from ",Loc1," to ",Loc2).
  17.